package com.itheima.d7_simpledateformat;

import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Date;

/**
 * 我们把Date对象转换为指定格式的日期字符串这个操作，叫做日期格式化.
 * 反过来把指定格式的日期符串转换为Date对象的操作，叫做日期解析.
 * 字母	   表示含义
 * yyyy	年
 * MM		月
 * dd		日
 * HH		时
 * mm		分
 * ss		秒
 * SSS		毫秒
 * "2022年12月12日" 的格式是 "yyyy年MM月dd日"
 * "2022-12-12 12:12:12" 的格式是 "yyyy-MM-dd HH:mm:ss"
 * 按照上面的格式可以任意拼接，但是字母不能写错
 */
public class SimpleDateFormatDemo {
    public static void main(String[] args) throws ParseException {
        //1.准备一些时间
        Date d = new Date();
        System.out.println(d);

        long time = d.getTime();
        System.out.println(time);

        //2.格式化日期对象，和时间毫秒值
        SimpleDateFormat sdf = new SimpleDateFormat("yyyy年MM月dd日 HH:mm:ss");
        String rs1 = sdf.format(d);
        System.out.println(rs1);

        String rs2 = sdf.format(time);
        System.out.println(rs2);
        System.out.println("====================================");


        //掌握SimpleDateFormat的解析功能 成为日期对象
        String dateStr =  "2022-12-12 12:12:11";
        //创建简单日期格式化对象，指定的时间格式必须与被解析的时间格式一模一样
        //否则程序会出bug
        SimpleDateFormat sdf2 = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
        Date d2 = sdf2.parse(dateStr);

        System.out.println(d2);
    }
}
